/**
 * Wihidum - Efficient Broker Hierarchy for Publish Subscribe Middleware
 *
 * License      :   Apache License 2.0
 * Home Page    :   http://code.google.com/p/wihidum/
 * Mailing List :   wihidum@googlegroups.com
 */

package lk.mrt.cse.wihidum.client;

import org.apache.axis2.addressing.EndpointReference;

/**
 * Encapsulates the details with respect to an publication event
 */
public class PublicationClientBean {
    /**
     * End point reference of a broker service
     */
    private EndpointReference brokerAddress;
    /**
     * End point reference of publisher service
     */
    private EndpointReference publisherAddress;
    /**
     * Topic under which publication is published
     */
    private String topic;
    /**
     * Content of an publication
     */
    private String publicationText;

    public EndpointReference getAdminAddress() {
        return adminAddress;
    }

    public void setAdminAddress(EndpointReference adminAddress) {
        this.adminAddress = adminAddress;
    }

    private EndpointReference adminAddress;

    /**
     * Get the end point reference of the broker service
     *
     * @return EndpointReference that contains end point reference of a broker service
     *         {@link PublicationClient PublicationClient}
     */
    public EndpointReference getBrokerAddress() {
        return brokerAddress;
    }

    /**
     * Set the end point reference of the broker service
     *
     * @param brokerAddress EndpointReference that contains end point reference of a broker service
     */
    public void setBrokerAddress(EndpointReference brokerAddress) {
        this.brokerAddress = brokerAddress;
    }

    /**
     * Get the end point reference of publisher service
     *
     * @return EndpointReference that contains End point reference of publisher service
     */
    public EndpointReference getPublisherAddress() {
        return publisherAddress;
    }

    /**
     * Set the end point reference of publisher service
     *
     * @param publisherAddress EndpointReference that contains End point reference of publisher service
     */
    public void setPublisherAddress(EndpointReference publisherAddress) {
        this.publisherAddress = publisherAddress;
    }

    /**
     * Get the topic under which the publication is published
     *
     * @return String that contains the topic under which the publication is published
     */
    public String getTopic() {
        return this.topic;
    }

    /**
     * Set the topic under which the publication is published
     *
     * @param topic String that contains the topic under which the publication is published
     */
    public void setTopic(String topic) {
        this.topic = topic;
    }

    /**
     * Get the content of the publication
     *
     * @return String that contains the content of the publication
     */
    public String getPublicationText() {
        return this.publicationText;
    }

    /**
     * Set the content of the publication
     *
     * @param publicationText String that contains the content of the publication
     */
    public void setPublicationText(String publicationText) {
        this.publicationText = publicationText;
    }

}
